package com.ruoyi.transaction.domain.VO;

import java.time.LocalDateTime;

//用于展示在前端仅作为查询时使用
public class UserCouponVO {
    private Long id;              // 用户优惠券ID
    private Long membersId;
    private Long couponId;
    private String username;      // 用户名
    private String phone;         // 用户手机号
    private String couponName;    // 优惠券名称
    private String couponType;    // 优惠券类型
    private Integer status;       // 状态（0未使用，1已使用，2已过期）
    private Integer sourceType;   // 来源（1平台发放 2活动领取 3兑换）
    private LocalDateTime receivedTime;
    private LocalDateTime usedTime;
    private Long orderId;         // 关联订单ID


    public Long getCouponId() {
        return couponId;
    }

    public void setCouponId(Long couponId) {
        this.couponId = couponId;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getUsername() {
        return username;
    }

    public Long getMembersId() {
        return membersId;
    }

    public void setMembersId(Long membersId) {
        this.membersId = membersId;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getCouponName() {
        return couponName;
    }

    public void setCouponName(String couponName) {
        this.couponName = couponName;
    }

    public String getCouponType() {
        return couponType;
    }

    public void setCouponType(String couponType) {
        this.couponType = couponType;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Integer getSourceType() {
        return sourceType;
    }

    public void setSourceType(Integer sourceType) {
        this.sourceType = sourceType;
    }

    public LocalDateTime getReceivedTime() {
        return receivedTime;
    }

    public void setReceivedTime(LocalDateTime receivedTime) {
        this.receivedTime = receivedTime;
    }

    public LocalDateTime getUsedTime() {
        return usedTime;
    }

    public void setUsedTime(LocalDateTime usedTime) {
        this.usedTime = usedTime;
    }

    public Long getOrderId() {
        return orderId;
    }

    public void setOrderId(Long orderId) {
        this.orderId = orderId;
    }

    @Override
    public String toString() {
        return "UserCouponVO{" +
                "id=" + id +
                ", membersId=" + membersId +
                ", couponId=" + couponId +
                ", username='" + username + '\'' +
                ", phone='" + phone + '\'' +
                ", couponName='" + couponName + '\'' +
                ", couponType='" + couponType + '\'' +
                ", status=" + status +
                ", sourceType=" + sourceType +
                ", receivedTime=" + receivedTime +
                ", usedTime=" + usedTime +
                ", orderId=" + orderId +
                '}';
    }
}

